package com.jsejtman.gastos.spring;

import com.jsejtman.gastos.service.lookup.SpringServiceLocator;
import org.springframework.context.support.ClassPathXmlApplicationContext;

/**
 * Inicializador del contexto de Spring para el motor de integraciones iGen.
 * 
 * @author jsejtman
 */
public final class CaJuGastosSpringContextInitializator {

	/**
	 * Constructor privado para evitar instancias de la clase.
	 */
	private CaJuGastosSpringContextInitializator() {

	}

	/**
	 * Inicializa el contexto de Spring.
	 */
	public static synchronized void initializeSpringContext() {

		final SpringServiceLocator locator =
		        (SpringServiceLocator) SpringServiceLocator.getInstance();

		if (locator.getApplicationContext() == null) {
			/* CHECKSTYLE:OFF */
			locator.setApplicationContext(new ClassPathXmlApplicationContext(
			        new String[] { "applicationContext.xml" }));
			/* CHECKSTYLE:ON */
		}
	}
}
